package bean;

import java.io.IOException;
import java.io.Serializable;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

import socketutils.SSL_Connector;
import entites.Utilisateur;

@ManagedBean(name = "auth")
@SessionScoped
public class AuthBean implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	String login;
	String password;
	Utilisateur user;

	// TODO Gerer le cas d'un utilisateur n'existant pas dans la BDD (NULL)
	public void connexion() throws IOException {
		// Creation de la socket de communication
		SSL_Connector requete = new SSL_Connector();
		// On effectuer la requete en passant le login et le password saisie par
		// le user
		user = requete.effectuerConnexion(login, password);
		// On enregistre le User en session
		AppletUtilsBean.setValueExpression(FacesContext.getCurrentInstance(), "#{sessionScope.user}", Utilisateur.class, user);
		FacesContext.getCurrentInstance().getExternalContext().redirect("index.xhtml");
	}

	public String getLogin() {
		return login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

}
